.class public Lcom/nemustech/tiffany/world/TFCrumpleEffect;
.super Lcom/nemustech/tiffany/world/TFCustomPanel$Blender;
.source "TFCrumpleEffect.java"


# static fields
.field public static final CRUMPLE_SHAPE_CIRCLE:I = 0x2

.field public static final CRUMPLE_SHAPE_RECT:I = 0x1

.field public static final DEFAULT_CRUMPLE_DURATION:I = 0x1e

.field public static final DEFAULT_CRUMPLE_SIZE:F = 0.0625f

.field public static final DEFAULT_CRUMPLE_SIZE_PER_STEP:F = 0.0625f

.field public static final DEFAULT_DURATION:I = 0x5dc

.field public static final EFFECT_MODE_CRUMPLE:I = 0x1

.field public static final EFFECT_MODE_WRINKLE:I = 0x2

.field private static final TAG:Ljava/lang/String; = "TFCrumpleEffect"


# instance fields
.field private mCrumpleBlendCount:I

.field protected mCrumpleDuration:I

.field private mCrumplePosX:F

.field private mCrumplePosY:F

.field private mCrumpleShape:I

.field private mCrumpleSize:F

.field private mCrumpleSizePerStep:F

.field private mCrumpleVertexCount:I

.field private final mCustomPanel:Lcom/nemustech/tiffany/world/TFCustomPanel;

.field protected mDuration:I

.field private mEffectEndPosX:F

.field private mEffectEndPosY:F

.field private mEffectMode:I

.field protected final mIdentity:[F

.field private mMaxCrumpleBlendCount:I

.field private mMaxCrumpleVertexCount:I

.field private mMaxVertexX:F

.field private mMaxVertexY:F

.field private final mMeshH:I

.field private final mMeshW:I

.field private mMinVertexX:F

.field private mMinVertexY:F

.field private mRemovable:Z

.field private final mTime:Lcom/nemustech/tiffany/world/TFCustomPanel$Time;

.field private mTouchPosX:F

.field private mTouchPosY:F

.field private mVertex:[F

.field private mVertexStack:Ljava/util/Stack;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/Stack",
            "<[F>;"
        }
    .end annotation
.end field


# direct methods
.method public constructor <init>(Lcom/nemustech/tiffany/world/TFCustomPanel;)V
    .locals 5
    .parameter "customPanel"

    .prologue
    const/high16 v4, 0x3f00

    const/high16 v3, 0x3d80

    const/4 v2, 0x0

    .line 57
    invoke-direct {p0}, Lcom/nemustech/tiffany/world/TFCustomPanel$Blender;-><init>()V

    .line 58
    iput-object p1, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCustomPanel:Lcom/nemustech/tiffany/world/TFCustomPanel;

    .line 59
    iget-object v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCustomPanel:Lcom/nemustech/tiffany/world/TFCustomPanel;

    invoke-virtual {v0}, Lcom/nemustech/tiffany/world/TFCustomPanel;->getMeshWidth()I

    move-result v0

    iput v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshW:I

    .line 60
    iget-object v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCustomPanel:Lcom/nemustech/tiffany/world/TFCustomPanel;

    invoke-virtual {v0}, Lcom/nemustech/tiffany/world/TFCustomPanel;->getMeshHeight()I

    move-result v0

    iput v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshH:I

    .line 61
    new-instance v0, Lcom/nemustech/tiffany/world/TFCustomPanel$Time;

    invoke-direct {v0}, Lcom/nemustech/tiffany/world/TFCustomPanel$Time;-><init>()V

    iput-object v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mTime:Lcom/nemustech/tiffany/world/TFCustomPanel$Time;

    .line 63
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshH:I

    add-int/lit8 v0, v0, 0x1

    iget v1, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshW:I

    add-int/lit8 v1, v1, 0x1

    mul-int/2addr v0, v1

    mul-int/lit8 v0, v0, 0x3

    new-array v0, v0, [F

    iput-object v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mIdentity:[F

    .line 64
    iget-object v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCustomPanel:Lcom/nemustech/tiffany/world/TFCustomPanel;

    iget-object v1, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mIdentity:[F

    invoke-virtual {v0, v1}, Lcom/nemustech/tiffany/world/TFCustomPanel;->loadIdentityVertex([F)V

    .line 65
    iget-object v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCustomPanel:Lcom/nemustech/tiffany/world/TFCustomPanel;

    invoke-virtual {v0}, Lcom/nemustech/tiffany/world/TFCustomPanel;->getVertex()[F

    move-result-object v0

    iput-object v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    .line 67
    const/4 v0, 0x2

    iput v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleShape:I

    .line 68
    const/16 v0, 0x1e

    iput v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleDuration:I

    .line 69
    const/16 v0, 0x5dc

    iput v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mDuration:I

    .line 70
    iput v3, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleSize:F

    .line 71
    iput v3, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleSizePerStep:F

    .line 72
    iput v4, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumplePosX:F

    .line 73
    iput v4, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumplePosY:F

    .line 74
    iput v2, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleVertexCount:I

    .line 75
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshH:I

    add-int/lit8 v0, v0, 0x1

    iget v1, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshW:I

    add-int/lit8 v1, v1, 0x1

    mul-int/2addr v0, v1

    iput v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxCrumpleVertexCount:I

    .line 76
    iput-boolean v2, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mRemovable:Z

    .line 77
    iput v2, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleBlendCount:I

    .line 78
    iput v2, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxCrumpleBlendCount:I

    .line 80
    const/4 v0, 0x1

    iput v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mEffectMode:I

    .line 82
    const/4 v0, 0x0

    iput-object v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertexStack:Ljava/util/Stack;

    .line 83
    return-void
.end method

.method private blend()V
    .locals 1

    .prologue
    .line 236
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleBlendCount:I

    add-int/lit8 v0, v0, 0x1

    iput v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleBlendCount:I

    .line 237
    invoke-direct {p0}, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->updateObject()V

    .line 238
    return-void
.end method

.method private getRandomOffset()F
    .locals 5

    .prologue
    const/high16 v4, 0x4040

    .line 305
    new-instance v0, Ljava/util/Random;

    invoke-direct {v0}, Ljava/util/Random;-><init>()V

    .line 306
    .local v0, rnd:Ljava/util/Random;
    invoke-virtual {v0}, Ljava/util/Random;->nextBoolean()Z

    move-result v1

    if-eqz v1, :cond_0

    .line 307
    invoke-static {}, Ljava/lang/Math;->random()D

    move-result-wide v1

    iget v3, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleSizePerStep:F

    div-float/2addr v3, v4

    float-to-double v3, v3

    rem-double/2addr v1, v3

    double-to-float v1, v1

    .line 309
    :goto_0
    return v1

    :cond_0
    invoke-static {}, Ljava/lang/Math;->random()D

    move-result-wide v1

    iget v3, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleSizePerStep:F

    div-float/2addr v3, v4

    float-to-double v3, v3

    rem-double/2addr v1, v3

    double-to-float v1, v1

    neg-float v1, v1

    goto :goto_0
.end method

.method private isInCrumpleArea(FF)Z
    .locals 9
    .parameter "vertexX"
    .parameter "vertexY"

    .prologue
    const/4 v8, 0x1

    const/4 v7, 0x0

    .line 290
    iget v5, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mEffectEndPosX:F

    sub-float v5, p1, v5

    invoke-static {v5}, Ljava/lang/Math;->abs(F)F

    move-result v1

    .line 291
    .local v1, x:F
    iget v5, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mEffectEndPosY:F

    sub-float v5, p2, v5

    invoke-static {v5}, Ljava/lang/Math;->abs(F)F

    move-result v3

    .line 292
    .local v3, y:F
    iget v5, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleShape:I

    packed-switch v5, :pswitch_data_0

    .line 295
    mul-float v2, v1, v1

    .line 296
    .local v2, x2:F
    mul-float v4, v3, v3

    .line 297
    .local v4, y2:F
    add-float v5, v2, v4

    float-to-double v5, v5

    invoke-static {v5, v6}, Ljava/lang/Math;->sqrt(D)D

    move-result-wide v5

    double-to-float v0, v5

    .line 298
    .local v0, distance:F
    iget v5, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleSize:F

    cmpg-float v5, v0, v5

    if-gtz v5, :cond_0

    move v5, v8

    .line 300
    .end local v0           #distance:F
    .end local v2           #x2:F
    .end local v4           #y2:F
    :goto_0
    return v5

    .restart local v0       #distance:F
    .restart local v2       #x2:F
    .restart local v4       #y2:F
    :cond_0
    move v5, v7

    .line 298
    goto :goto_0

    .line 300
    .end local v0           #distance:F
    .end local v2           #x2:F
    .end local v4           #y2:F
    :pswitch_0
    iget v5, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleSize:F

    cmpg-float v5, v1, v5

    if-gtz v5, :cond_1

    iget v5, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleSize:F

    cmpg-float v5, v3, v5

    if-gtz v5, :cond_1

    move v5, v8

    goto :goto_0

    :cond_1
    move v5, v7

    goto :goto_0

    .line 292
    nop

    :pswitch_data_0
    .packed-switch 0x1
        :pswitch_0
    .end packed-switch
.end method

.method private updateObject()V
    .locals 10

    .prologue
    const/high16 v8, 0x3f80

    const/4 v7, 0x0

    const/4 v9, 0x0

    .line 241
    iput v9, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleVertexCount:I

    .line 243
    iput v8, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMinVertexX:F

    .line 244
    iput v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxVertexX:F

    .line 246
    iput v8, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMinVertexY:F

    .line 247
    iput v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxVertexY:F

    .line 249
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshH:I

    add-int/lit8 v7, v7, 0x1

    iget v8, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshW:I

    add-int/lit8 v8, v8, 0x1

    mul-int/2addr v7, v8

    mul-int/lit8 v7, v7, 0x3

    new-array v2, v7, [F

    .line 250
    .local v2, pushedVertex:[F
    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    iget-object v8, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    array-length v8, v8

    invoke-static {v7, v9, v2, v9, v8}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    .line 251
    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertexStack:Ljava/util/Stack;

    if-eqz v7, :cond_0

    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertexStack:Ljava/util/Stack;

    invoke-virtual {v7, v2}, Ljava/util/Stack;->push(Ljava/lang/Object;)Ljava/lang/Object;

    .line 252
    :cond_0
    const/4 v0, 0x0

    .local v0, i:I
    :goto_0
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshH:I

    if-gt v0, v7, :cond_a

    .line 253
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshW:I

    add-int/lit8 v7, v7, 0x1

    mul-int/2addr v7, v0

    mul-int/lit8 v3, v7, 0x3

    .line 254
    .local v3, rowIndex:I
    const/4 v1, 0x0

    .local v1, j:I
    :goto_1
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshW:I

    if-gt v1, v7, :cond_9

    .line 255
    move v4, v3

    .line 256
    .local v4, x:I
    add-int/lit8 v5, v3, 0x1

    .line 257
    .local v5, y:I
    add-int/lit8 v6, v3, 0x2

    .line 259
    .local v6, z:I
    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v7, v7, v4

    iget-object v8, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v8, v8, v5

    invoke-direct {p0, v7, v8}, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->isInCrumpleArea(FF)Z

    move-result v7

    if-eqz v7, :cond_6

    .line 260
    iget-boolean v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mRemovable:Z

    if-eqz v7, :cond_1

    .line 261
    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    iget v8, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mEffectEndPosX:F

    aput v8, v7, v4

    .line 262
    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    iget v8, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mEffectEndPosY:F

    aput v8, v7, v5

    .line 264
    :cond_1
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleVertexCount:I

    add-int/lit8 v7, v7, 0x1

    iput v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleVertexCount:I

    .line 278
    :goto_2
    add-int/lit8 v3, v3, 0x3

    .line 280
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMinVertexX:F

    iget-object v8, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v8, v8, v4

    cmpl-float v7, v7, v8

    if-lez v7, :cond_2

    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v7, v7, v4

    iput v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMinVertexX:F

    .line 281
    :cond_2
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxVertexX:F

    iget-object v8, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v8, v8, v4

    cmpg-float v7, v7, v8

    if-gez v7, :cond_3

    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v7, v7, v4

    iput v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxVertexX:F

    .line 282
    :cond_3
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMinVertexY:F

    iget-object v8, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v8, v8, v5

    cmpl-float v7, v7, v8

    if-lez v7, :cond_4

    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v7, v7, v5

    iput v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMinVertexY:F

    .line 283
    :cond_4
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxVertexY:F

    iget-object v8, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v8, v8, v5

    cmpg-float v7, v7, v8

    if-gez v7, :cond_5

    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v7, v7, v5

    iput v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxVertexY:F

    .line 254
    :cond_5
    add-int/lit8 v1, v1, 0x1

    goto :goto_1

    .line 266
    :cond_6
    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v7, v7, v4

    iget v8, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mEffectEndPosX:F

    cmpg-float v7, v7, v8

    if-gez v7, :cond_7

    .line 267
    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    iget-object v8, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v8, v8, v4

    iget v9, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleSizePerStep:F

    add-float/2addr v8, v9

    invoke-direct {p0}, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->getRandomOffset()F

    move-result v9

    add-float/2addr v8, v9

    aput v8, v7, v4

    .line 272
    :goto_3
    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v7, v7, v5

    iget v8, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mEffectEndPosY:F

    cmpg-float v7, v7, v8

    if-gez v7, :cond_8

    .line 273
    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    iget-object v8, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v8, v8, v5

    iget v9, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleSizePerStep:F

    add-float/2addr v8, v9

    invoke-direct {p0}, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->getRandomOffset()F

    move-result v9

    add-float/2addr v8, v9

    aput v8, v7, v5

    goto :goto_2

    .line 269
    :cond_7
    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    iget-object v8, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v8, v8, v4

    iget v9, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleSizePerStep:F

    sub-float/2addr v8, v9

    invoke-direct {p0}, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->getRandomOffset()F

    move-result v9

    add-float/2addr v8, v9

    aput v8, v7, v4

    goto :goto_3

    .line 275
    :cond_8
    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    iget-object v8, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v8, v8, v5

    iget v9, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleSizePerStep:F

    sub-float/2addr v8, v9

    invoke-direct {p0}, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->getRandomOffset()F

    move-result v9

    add-float/2addr v8, v9

    aput v8, v7, v5

    goto/16 :goto_2

    .line 252
    .end local v4           #x:I
    .end local v5           #y:I
    .end local v6           #z:I
    :cond_9
    add-int/lit8 v0, v0, 0x1

    goto/16 :goto_0

    .line 287
    .end local v1           #j:I
    .end local v3           #rowIndex:I
    :cond_a
    return-void
.end method


# virtual methods
.method public dumpIdentityVertex()V
    .locals 10

    .prologue
    .line 150
    const-string v7, "TFCrumpleEffect"

    const-string v8, "[DUMP OF THE VERTEX]--------------------------------------------"

    invoke-static {v7, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 151
    const/4 v0, 0x0

    .line 152
    .local v0, count:I
    const/4 v1, 0x0

    .local v1, i:I
    :goto_0
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshH:I

    if-gt v1, v7, :cond_1

    .line 153
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshW:I

    add-int/lit8 v7, v7, 0x1

    mul-int/2addr v7, v1

    mul-int/lit8 v3, v7, 0x3

    .line 154
    .local v3, rowIndex:I
    const-string v7, "TFCrumpleEffect"

    new-instance v8, Ljava/lang/StringBuilder;

    invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V

    const-string v9, "[i="

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "]---"

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v8

    invoke-static {v7, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 155
    const/4 v2, 0x0

    .local v2, j:I
    :goto_1
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshW:I

    if-gt v2, v7, :cond_0

    .line 156
    move v4, v3

    .line 157
    .local v4, x:I
    add-int/lit8 v5, v3, 0x1

    .line 158
    .local v5, y:I
    add-int/lit8 v6, v3, 0x2

    .line 159
    .local v6, z:I
    add-int/lit8 v0, v0, 0x1

    .line 160
    const-string v7, "TFCrumpleEffect"

    new-instance v8, Ljava/lang/StringBuilder;

    invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V

    const-string v9, "mVertex("

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "): ["

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ", "

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "] => "

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "("

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ","

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ")"

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "="

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "("

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    iget-object v9, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mIdentity:[F

    aget v9, v9, v4

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(F)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ", "

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    iget-object v9, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mIdentity:[F

    aget v9, v9, v5

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(F)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ")"

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v8

    invoke-static {v7, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 162
    add-int/lit8 v3, v3, 0x3

    .line 155
    add-int/lit8 v2, v2, 0x1

    goto/16 :goto_1

    .line 152
    .end local v4           #x:I
    .end local v5           #y:I
    .end local v6           #z:I
    :cond_0
    add-int/lit8 v1, v1, 0x1

    goto/16 :goto_0

    .line 165
    .end local v2           #j:I
    .end local v3           #rowIndex:I
    :cond_1
    return-void
.end method

.method public dumpIdentityVertex2()V
    .locals 10

    .prologue
    .line 168
    const-string v7, "TFCrumpleEffect"

    const-string v8, "[DUMP OF THE VERTEX]--------------------------------------------"

    invoke-static {v7, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 169
    const/4 v0, 0x0

    .line 170
    .local v0, count:I
    const/4 v1, 0x0

    .local v1, i:I
    :goto_0
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshW:I

    if-gt v1, v7, :cond_1

    .line 171
    mul-int/lit8 v3, v1, 0x3

    .line 172
    .local v3, rowIndex:I
    const-string v7, "TFCrumpleEffect"

    new-instance v8, Ljava/lang/StringBuilder;

    invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V

    const-string v9, "[i="

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "]---"

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v8

    invoke-static {v7, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 173
    const/4 v2, 0x0

    .local v2, j:I
    :goto_1
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshH:I

    if-gt v2, v7, :cond_0

    .line 174
    move v4, v3

    .line 175
    .local v4, x:I
    add-int/lit8 v5, v3, 0x1

    .line 176
    .local v5, y:I
    add-int/lit8 v6, v3, 0x2

    .line 177
    .local v6, z:I
    add-int/lit8 v0, v0, 0x1

    .line 178
    const-string v7, "TFCrumpleEffect"

    new-instance v8, Ljava/lang/StringBuilder;

    invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V

    const-string v9, "mIdentity("

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "): ["

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ", "

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "] => "

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "("

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ","

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ")"

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "="

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "("

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    iget-object v9, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mIdentity:[F

    aget v9, v9, v4

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(F)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ", "

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    iget-object v9, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mIdentity:[F

    aget v9, v9, v5

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(F)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ")"

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v8

    invoke-static {v7, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 180
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshW:I

    add-int/lit8 v7, v7, 0x1

    mul-int/lit8 v7, v7, 0x3

    add-int/2addr v3, v7

    .line 173
    add-int/lit8 v2, v2, 0x1

    goto/16 :goto_1

    .line 170
    .end local v4           #x:I
    .end local v5           #y:I
    .end local v6           #z:I
    :cond_0
    add-int/lit8 v1, v1, 0x1

    goto/16 :goto_0

    .line 183
    .end local v2           #j:I
    .end local v3           #rowIndex:I
    :cond_1
    return-void
.end method

.method public dumpVertex()V
    .locals 10

    .prologue
    .line 114
    const-string v7, "TFCrumpleEffect"

    const-string v8, "[DUMP OF THE VERTEX]--------------------------------------------"

    invoke-static {v7, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 115
    const/4 v0, 0x0

    .line 116
    .local v0, count:I
    const/4 v1, 0x0

    .local v1, i:I
    :goto_0
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshH:I

    if-gt v1, v7, :cond_1

    .line 117
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshW:I

    add-int/lit8 v7, v7, 0x1

    mul-int/2addr v7, v1

    mul-int/lit8 v3, v7, 0x3

    .line 118
    .local v3, rowIndex:I
    const-string v7, "TFCrumpleEffect"

    new-instance v8, Ljava/lang/StringBuilder;

    invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V

    const-string v9, "[i="

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "]---"

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v8

    invoke-static {v7, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 119
    const/4 v2, 0x0

    .local v2, j:I
    :goto_1
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshW:I

    if-gt v2, v7, :cond_0

    .line 120
    move v4, v3

    .line 121
    .local v4, x:I
    add-int/lit8 v5, v3, 0x1

    .line 122
    .local v5, y:I
    add-int/lit8 v6, v3, 0x2

    .line 123
    .local v6, z:I
    add-int/lit8 v0, v0, 0x1

    .line 124
    const-string v7, "TFCrumpleEffect"

    new-instance v8, Ljava/lang/StringBuilder;

    invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V

    const-string v9, "mVertex("

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "): ["

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ", "

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "] => "

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "("

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ","

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ")"

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "="

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "("

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    iget-object v9, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v9, v9, v4

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(F)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ", "

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    iget-object v9, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v9, v9, v5

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(F)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ")"

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v8

    invoke-static {v7, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 126
    add-int/lit8 v3, v3, 0x3

    .line 119
    add-int/lit8 v2, v2, 0x1

    goto/16 :goto_1

    .line 116
    .end local v4           #x:I
    .end local v5           #y:I
    .end local v6           #z:I
    :cond_0
    add-int/lit8 v1, v1, 0x1

    goto/16 :goto_0

    .line 129
    .end local v2           #j:I
    .end local v3           #rowIndex:I
    :cond_1
    return-void
.end method

.method public dumpVertex2()V
    .locals 10

    .prologue
    .line 132
    const-string v7, "TFCrumpleEffect"

    const-string v8, "[DUMP OF THE VERTEX]--------------------------------------------"

    invoke-static {v7, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 133
    const/4 v0, 0x0

    .line 134
    .local v0, count:I
    const/4 v1, 0x0

    .local v1, i:I
    :goto_0
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshW:I

    if-gt v1, v7, :cond_1

    .line 135
    mul-int/lit8 v3, v1, 0x3

    .line 136
    .local v3, rowIndex:I
    const-string v7, "TFCrumpleEffect"

    new-instance v8, Ljava/lang/StringBuilder;

    invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V

    const-string v9, "[i="

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "]---"

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v8

    invoke-static {v7, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 137
    const/4 v2, 0x0

    .local v2, j:I
    :goto_1
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshH:I

    if-gt v2, v7, :cond_0

    .line 138
    move v4, v3

    .line 139
    .local v4, x:I
    add-int/lit8 v5, v3, 0x1

    .line 140
    .local v5, y:I
    add-int/lit8 v6, v3, 0x2

    .line 141
    .local v6, z:I
    add-int/lit8 v0, v0, 0x1

    .line 142
    const-string v7, "TFCrumpleEffect"

    new-instance v8, Ljava/lang/StringBuilder;

    invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V

    const-string v9, "mVertex("

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "): ["

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ", "

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "] => "

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "("

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ","

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ")"

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "="

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, "("

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    iget-object v9, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v9, v9, v4

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(F)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ", "

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    iget-object v9, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v9, v9, v5

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(F)Ljava/lang/StringBuilder;

    move-result-object v8

    const-string v9, ")"

    invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v8

    invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v8

    invoke-static {v7, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 144
    iget v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshW:I

    add-int/lit8 v7, v7, 0x1

    mul-int/lit8 v7, v7, 0x3

    add-int/2addr v3, v7

    .line 137
    add-int/lit8 v2, v2, 0x1

    goto/16 :goto_1

    .line 134
    .end local v4           #x:I
    .end local v5           #y:I
    .end local v6           #z:I
    :cond_0
    add-int/lit8 v1, v1, 0x1

    goto/16 :goto_0

    .line 147
    .end local v2           #j:I
    .end local v3           #rowIndex:I
    :cond_1
    return-void
.end method

.method public getCrumpleCoordXPosWithModelCoord(F)F
    .locals 2
    .parameter "xPos"

    .prologue
    .line 374
    iget-object v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCustomPanel:Lcom/nemustech/tiffany/world/TFCustomPanel;

    invoke-virtual {v0}, Lcom/nemustech/tiffany/world/TFCustomPanel;->getWidth()F

    move-result v0

    div-float v0, p1, v0

    const/high16 v1, 0x3f00

    add-float/2addr v0, v1

    return v0
.end method

.method public getCrumpleCoordYPosWithModelCoord(F)F
    .locals 2
    .parameter "yPos"

    .prologue
    .line 379
    iget-object v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCustomPanel:Lcom/nemustech/tiffany/world/TFCustomPanel;

    invoke-virtual {v0}, Lcom/nemustech/tiffany/world/TFCustomPanel;->getHeight()F

    move-result v0

    div-float v0, p1, v0

    const/high16 v1, 0x3f00

    add-float/2addr v0, v1

    return v0
.end method

.method public getEffectMode()I
    .locals 1

    .prologue
    .line 190
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mEffectMode:I

    return v0
.end method

.method public getMaxCrumpleBlendCount()I
    .locals 1

    .prologue
    .line 355
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxCrumpleBlendCount:I

    return v0
.end method

.method public getMaxVertexX()F
    .locals 1

    .prologue
    .line 391
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxVertexX:F

    return v0
.end method

.method public getMaxVertexY()F
    .locals 1

    .prologue
    .line 399
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxVertexY:F

    return v0
.end method

.method public getMinVertexX()F
    .locals 1

    .prologue
    .line 387
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMinVertexX:F

    return v0
.end method

.method public getMinVertexY()F
    .locals 1

    .prologue
    .line 395
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMinVertexY:F

    return v0
.end method

.method public getPanel()Lcom/nemustech/tiffany/world/TFCustomPanel;
    .locals 1

    .prologue
    .line 314
    iget-object v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCustomPanel:Lcom/nemustech/tiffany/world/TFCustomPanel;

    return-object v0
.end method

.method public getPanelCoordPos(II[F)V
    .locals 6
    .parameter "xIndex"
    .parameter "yIndex"
    .parameter "xyz"

    .prologue
    .line 403
    mul-int/lit8 v0, p1, 0x3

    .line 404
    .local v0, vertexIndex:I
    iget v4, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshW:I

    add-int/lit8 v4, v4, 0x1

    mul-int/lit8 v4, v4, 0x3

    mul-int/2addr v4, p2

    add-int/2addr v0, v4

    .line 405
    move v1, v0

    .line 406
    .local v1, x:I
    add-int/lit8 v2, v0, 0x1

    .line 407
    .local v2, y:I
    add-int/lit8 v3, v0, 0x2

    .line 409
    .local v3, z:I
    const/4 v4, 0x0

    iget-object v5, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v5, v5, v1

    aput v5, p3, v4

    .line 410
    const/4 v4, 0x1

    iget-object v5, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v5, v5, v2

    aput v5, p3, v4

    .line 411
    const/4 v4, 0x2

    iget-object v5, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v5, v5, v3

    aput v5, p3, v4

    .line 412
    return-void
.end method

.method public getVertexStack()Ljava/util/Stack;
    .locals 1
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "()",
            "Ljava/util/Stack",
            "<[F>;"
        }
    .end annotation

    .prologue
    .line 383
    iget-object v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertexStack:Ljava/util/Stack;

    return-object v0
.end method

.method public hasEnded()Z
    .locals 4

    .prologue
    const/4 v3, 0x1

    const/4 v2, 0x0

    .line 210
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mEffectMode:I

    const/4 v1, 0x2

    if-ne v0, v1, :cond_1

    .line 211
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleBlendCount:I

    iget v1, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxCrumpleBlendCount:I

    if-lt v0, v1, :cond_0

    move v0, v3

    .line 213
    :goto_0
    return v0

    :cond_0
    move v0, v2

    .line 211
    goto :goto_0

    .line 213
    :cond_1
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleVertexCount:I

    iget v1, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxCrumpleVertexCount:I

    if-lt v0, v1, :cond_2

    move v0, v3

    goto :goto_0

    :cond_2
    move v0, v2

    goto :goto_0
.end method

.method public onEnd()V
    .locals 0

    .prologue
    .line 219
    return-void
.end method

.method public onFrame(I)V
    .locals 2
    .parameter "tick"

    .prologue
    .line 223
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mEffectMode:I

    const/4 v1, 0x2

    if-ne v0, v1, :cond_1

    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxCrumpleBlendCount:I

    if-gtz v0, :cond_1

    .line 233
    :cond_0
    :goto_0
    return-void

    .line 227
    :cond_1
    iget-object v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mTime:Lcom/nemustech/tiffany/world/TFCustomPanel$Time;

    invoke-virtual {v0, p1}, Lcom/nemustech/tiffany/world/TFCustomPanel$Time;->update(I)Z

    move-result v0

    if-eqz v0, :cond_0

    .line 231
    invoke-direct {p0}, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->blend()V

    .line 232
    iget-object v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCustomPanel:Lcom/nemustech/tiffany/world/TFCustomPanel;

    invoke-virtual {v0}, Lcom/nemustech/tiffany/world/TFCustomPanel;->requestUpdateVertex()V

    goto :goto_0
.end method

.method public onStart()V
    .locals 3

    .prologue
    .line 195
    iget-object v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mTime:Lcom/nemustech/tiffany/world/TFCustomPanel$Time;

    iget v1, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mDuration:I

    iget v2, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleDuration:I

    invoke-virtual {v0, v1, v2}, Lcom/nemustech/tiffany/world/TFCustomPanel$Time;->start(II)V

    .line 196
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mEffectMode:I

    packed-switch v0, :pswitch_data_0

    .line 199
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumplePosX:F

    iput v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mEffectEndPosX:F

    .line 200
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumplePosY:F

    iput v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mEffectEndPosY:F

    .line 206
    :goto_0
    return-void

    .line 203
    :pswitch_0
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mTouchPosX:F

    iput v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mEffectEndPosX:F

    .line 204
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mTouchPosY:F

    iput v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mEffectEndPosY:F

    goto :goto_0

    .line 196
    :pswitch_data_0
    .packed-switch 0x2
        :pswitch_0
    .end packed-switch
.end method

.method public resetCount()V
    .locals 1

    .prologue
    const/4 v0, 0x0

    .line 415
    iput v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleVertexCount:I

    .line 416
    iput v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleBlendCount:I

    .line 417
    return-void
.end method

.method public resetPanel()V
    .locals 4

    .prologue
    const/4 v3, 0x0

    .line 420
    iget-object v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mIdentity:[F

    iget-object v1, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    iget-object v2, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mIdentity:[F

    array-length v2, v2

    invoke-static {v0, v3, v1, v3, v2}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    .line 421
    iget-object v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCustomPanel:Lcom/nemustech/tiffany/world/TFCustomPanel;

    invoke-virtual {v0}, Lcom/nemustech/tiffany/world/TFCustomPanel;->requestUpdateVertex()V

    .line 423
    return-void
.end method

.method public setCrumpleCoord(FF)V
    .locals 0
    .parameter "crumplePosX"
    .parameter "crumplePosY"

    .prologue
    .line 318
    iput p1, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumplePosX:F

    .line 319
    iput p2, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumplePosY:F

    .line 320
    return-void
.end method

.method public setCrumpleCoordWithModelCoord(FF)V
    .locals 1
    .parameter "xPos"
    .parameter "yPos"

    .prologue
    .line 359
    invoke-virtual {p0, p1}, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->getCrumpleCoordXPosWithModelCoord(F)F

    move-result p1

    .line 360
    invoke-virtual {p0, p2}, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->getCrumpleCoordYPosWithModelCoord(F)F

    move-result p2

    .line 361
    iget v0, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mEffectMode:I

    packed-switch v0, :pswitch_data_0

    .line 364
    invoke-virtual {p0, p1, p2}, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->setCrumpleCoord(FF)V

    .line 370
    :goto_0
    return-void

    .line 367
    :pswitch_0
    invoke-virtual {p0, p1, p2}, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->setTouchCoord(FF)V

    goto :goto_0

    .line 361
    nop

    :pswitch_data_0
    .packed-switch 0x2
        :pswitch_0
    .end packed-switch
.end method

.method public setCrumpleDuration(II)V
    .locals 1
    .parameter "duration"
    .parameter "crumpleDuration"

    .prologue
    .line 336
    if-lez p2, :cond_0

    if-lt p2, p1, :cond_1

    .line 337
    :cond_0
    mul-int/lit8 v0, p1, 0x3

    div-int/lit8 p2, v0, 0x4

    .line 338
    :cond_1
    iput p1, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mDuration:I

    .line 339
    iput p2, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleDuration:I

    .line 340
    return-void
.end method

.method public setCrumpleShape(I)V
    .locals 0
    .parameter "shape"

    .prologue
    .line 347
    iput p1, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleShape:I

    .line 348
    return-void
.end method

.method public setCrumpleSize(F)V
    .locals 0
    .parameter "crumpleSize"

    .prologue
    .line 328
    iput p1, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleSize:F

    .line 329
    return-void
.end method

.method public setCrumpleSizePerStep(F)V
    .locals 0
    .parameter "crumpleSizePerStep"

    .prologue
    .line 332
    iput p1, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mCrumpleSizePerStep:F

    .line 333
    return-void
.end method

.method public setEffectMode(I)V
    .locals 0
    .parameter "mode"

    .prologue
    .line 186
    iput p1, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mEffectMode:I

    .line 187
    return-void
.end method

.method public setMaxCrumpleBlendCount(I)V
    .locals 0
    .parameter "count"

    .prologue
    .line 351
    iput p1, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxCrumpleBlendCount:I

    .line 352
    return-void
.end method

.method public setMinMaxVertex()V
    .locals 8

    .prologue
    const/high16 v7, 0x3f80

    const/4 v6, 0x0

    .line 90
    iput v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMinVertexX:F

    .line 91
    iput v6, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxVertexX:F

    .line 93
    iput v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMinVertexY:F

    .line 94
    iput v6, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxVertexY:F

    .line 96
    const/4 v0, 0x0

    .local v0, i:I
    :goto_0
    iget v6, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshH:I

    if-gt v0, v6, :cond_5

    .line 97
    iget v6, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshW:I

    add-int/lit8 v6, v6, 0x1

    mul-int/2addr v6, v0

    mul-int/lit8 v2, v6, 0x3

    .line 98
    .local v2, rowIndex:I
    const/4 v1, 0x0

    .local v1, j:I
    :goto_1
    iget v6, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMeshW:I

    if-gt v1, v6, :cond_4

    .line 99
    move v3, v2

    .line 100
    .local v3, x:I
    add-int/lit8 v4, v2, 0x1

    .line 101
    .local v4, y:I
    add-int/lit8 v5, v2, 0x2

    .line 103
    .local v5, z:I
    iget v6, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMinVertexX:F

    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v7, v7, v3

    cmpl-float v6, v6, v7

    if-lez v6, :cond_0

    iget-object v6, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v6, v6, v3

    iput v6, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMinVertexX:F

    .line 104
    :cond_0
    iget v6, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxVertexX:F

    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v7, v7, v3

    cmpg-float v6, v6, v7

    if-gez v6, :cond_1

    iget-object v6, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v6, v6, v3

    iput v6, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxVertexX:F

    .line 105
    :cond_1
    iget v6, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMinVertexY:F

    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v7, v7, v4

    cmpl-float v6, v6, v7

    if-lez v6, :cond_2

    iget-object v6, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v6, v6, v4

    iput v6, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMinVertexY:F

    .line 106
    :cond_2
    iget v6, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxVertexY:F

    iget-object v7, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v7, v7, v4

    cmpg-float v6, v6, v7

    if-gez v6, :cond_3

    iget-object v6, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertex:[F

    aget v6, v6, v4

    iput v6, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mMaxVertexY:F

    .line 108
    :cond_3
    add-int/lit8 v2, v2, 0x3

    .line 98
    add-int/lit8 v1, v1, 0x1

    goto :goto_1

    .line 96
    .end local v3           #x:I
    .end local v4           #y:I
    .end local v5           #z:I
    :cond_4
    add-int/lit8 v0, v0, 0x1

    goto :goto_0

    .line 111
    .end local v1           #j:I
    .end local v2           #rowIndex:I
    :cond_5
    return-void
.end method

.method public setRemovable(Z)V
    .locals 0
    .parameter "isRemove"

    .prologue
    .line 343
    iput-boolean p1, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mRemovable:Z

    .line 344
    return-void
.end method

.method public setTouchCoord(FF)V
    .locals 0
    .parameter "touchPosX"
    .parameter "touchPosY"

    .prologue
    .line 323
    iput p1, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mTouchPosX:F

    .line 324
    iput p2, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mTouchPosY:F

    .line 325
    return-void
.end method

.method public setVertexStack(Ljava/util/Stack;)V
    .locals 0
    .parameter
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/Stack",
            "<[F>;)V"
        }
    .end annotation

    .prologue
    .line 86
    .local p1, vertexStack:Ljava/util/Stack;,"Ljava/util/Stack<[F>;"
    iput-object p1, p0, Lcom/nemustech/tiffany/world/TFCrumpleEffect;->mVertexStack:Ljava/util/Stack;

    .line 87
    return-void
.end method
